package com.example.dto;

import com.example.cac409club.validation.CreateGroup;
import com.example.cac409club.validation.UpdateGroup;
import io.swagger.annotations.ApiModelProperty;
import java.util.List;
import javax.validation.constraints.NotNull;
import lombok.Data;

@Data
public class PostgraduateInfoDTO {

    /**
     * 信息ID
     */
    @NotNull(groups = UpdateGroup.class, message = "信息ID不能为空")
    @ApiModelProperty(value = "信息ID")
    private Integer infoId;

    /**
     * 用户ID
     */
    @NotNull(groups = {CreateGroup.class, UpdateGroup.class}, message = "用户ID不能为空")
    @ApiModelProperty(value = "用户ID")
    private Integer userId;

    /**
     * 考研经验
     */
    @ApiModelProperty(value = "考研经验")
    private String experience;

    /**
     * 考研小贴士
     */
    @ApiModelProperty(value = "考研小贴士")
    private String tips;

    /**
     * 是否分享
     */
    @ApiModelProperty(value = "是否分享")
    private Boolean shareStatus;

    /**
     * 文件ID（导入考研信息时使用）
     */
    @NotNull(groups = CreateGroup.class, message = "文件ID不能为空")
    @ApiModelProperty(value = "文件ID")
    private Integer fileId;

    /**
     * 信息ID列表（导出考研信息时使用）
     */
    @ApiModelProperty(value = "信息ID列表")
    private List<Integer> infoIds;
}